The present disclosure relates to a storage area network (SAN) and network-attached storage (NAS) systems for block and file memory storage versus object addressable data storage systems. A SAN is a high-speed special-purpose network (or sub-network) that interconnects different kinds of data storage devices with associated data servers on behalf of a larger network of users. SANs support disk mirroring, backup and restore, archival and retrieval of archived data, data migration from one storage device to another and the sharing of data among different servers in a network. SANs may incorporate sub-networks with network-attached storage (NAS) systems.
A network-attached storage (NAS) is hard disk storage that is set up with its own network address rather than being attached to a department computer that is serving applications to a networks workstation users. By removing storage access and its management from the department server, both application programming and files may be served faster because they are not competing for the same processor resources. The network-attached storage device may be attached to a local area network (typically, an Ethernet network) and assigned an IP address.
In contrast to block and file I/O storage systems, when an object is stored in Object addressable data storage systems (OAS), the object is given a name that uniquely identifies it and that also specifies its storage location. This type of data access therefore may eliminate the need for a table index in a metadata store and it may not be necessary to track the location of data in the metadata. An OAS receives and processes access requests via an object identifier that identifies a data unit or other content unit rather than an address that specifies where the data unit is physically or logically stored in the storage system. In OAS, a content unit may be identified using its object identifier and the object identifier may be independent of both the physical and logical locations where the content unit is stored. In other words, the object identifier does not control where the content unit is logically or physically stored. Thus, if a physical or logical location of a content unit changes, the identifier for access to the unit of content may remain the same. Thus, an application program may simply track the name and/or location of a file rather than tracking the block addresses of each of the blocks on disk that store the content.
Many storage systems have separate systems to de-duplicate and compress data and replication software is often added post system build. Server vendors have used available building blocks to slash server prices dramatically, yet storage incumbents continue to overcharge customers for their storage servers. Architectural complexity, non-integrated products, expensive proprietary networking protocols, cumbersome administration and licensing for every module of software are the norm and burden storage consumers with high prices and high maintenance.
The typical approach to providing a high performance digital storage system has been to include high RPM (revolutions per minute) drives and to increase the number of drives available to distribute the memory storage load. However, this approach has increased the initial system cost to acquire a large number of expensive disks and has also increased ongoing costs to power and cool these disks. Metadata, or data describing data, has therefore been utilized to compress data and to avoid storage of duplicate copies of compressed data by storing the location of duplicate copies in memory.
In traditional storage systems, metadata is stored on the disk itself. When data is being written or read from disk, the storage system has to write or read the metadata as well. This adds to the overhead of the overall write or read operation in terms of access time and latency as well as to hardware costs. There is therefore a long felt need for a block and file storage system with accelerated metadata management capable of scaling to larger disk storage.